volume button: Don't allow subclassing
authorMatthias Clasen <mclasen@redhat.com>
Sun, 19 May 2019 20:34:13 +0000 (20:34 +0000)
committerMatthias Clasen <mclasen@redhat.com>
Sun, 19 May 2019 20:34:13 +0000 (20:34 +0000)
If you want to subclass, there's GtkScaleButton.

gtk/gtkscalebutton.h
gtk/gtkvolumebutton.c
gtk/gtkvolumebutton.h

index 1fc7ecdab2143d1ec4dee4d59fee155a866751a2..c9dd397594f28ecc8aeada4993d7fcbcff02212e 100644 (file)
@@ -65,11 +65,9 @@ struct _GtkScaleButtonClass
   void (* value_changed) (GtkScaleButton *button,
                            gdouble         value);
 
-  /* Padding for future expansion */
-  void (*_gtk_reserved1) (void);
-  void (*_gtk_reserved2) (void);
-  void (*_gtk_reserved3) (void);
-  void (*_gtk_reserved4) (void);
+  /*< private >*/
+
+  gpointer padding[8];
 };
 
 GDK_AVAILABLE_IN_ALL
index 71b5fc120854c0b352e1641e8a5b5b6477c99dc2..5d805b282bba0175e8d5fc53a5ebaa2d0eb4dc84 100644 (file)
  * icons, tooltips and accessible labels.
  */
 
+typedef struct _GtkVolumeButtonClass  GtkVolumeButtonClass;
+
+struct _GtkVolumeButtonClass
+{
+  GtkScaleButtonClass parent_class;
+};
+
 #define EPSILON (1e-10)
 
 static const gchar * const icons[] =
index 19b60767879096f468687c2d54755a49d06cf689..57f28378b992c9c92f55ec0271809b8549b35d5b 100644 (file)
@@ -38,30 +38,15 @@ G_BEGIN_DECLS
 
 #define GTK_TYPE_VOLUME_BUTTON                 (gtk_volume_button_get_type ())
 #define GTK_VOLUME_BUTTON(obj)                 (G_TYPE_CHECK_INSTANCE_CAST ((obj), GTK_TYPE_VOLUME_BUTTON, GtkVolumeButton))
-#define GTK_VOLUME_BUTTON_CLASS(klass)         (G_TYPE_CHECK_CLASS_CAST ((klass), GTK_TYPE_VOLUME_BUTTON, GtkVolumeButtonClass))
 #define GTK_IS_VOLUME_BUTTON(obj)              (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GTK_TYPE_VOLUME_BUTTON))
-#define GTK_IS_VOLUME_BUTTON_CLASS(klass)      (G_TYPE_CHECK_CLASS_TYPE ((klass), GTK_TYPE_VOLUME_BUTTON))
-#define GTK_VOLUME_BUTTON_GET_CLASS(obj)       (G_TYPE_INSTANCE_GET_CLASS ((obj), GTK_TYPE_VOLUME_BUTTON, GtkVolumeButtonClass))
 
 typedef struct _GtkVolumeButton       GtkVolumeButton;
-typedef struct _GtkVolumeButtonClass  GtkVolumeButtonClass;
 
 struct _GtkVolumeButton
 {
   GtkScaleButton  parent;
 };
 
-struct _GtkVolumeButtonClass
-{
-  GtkScaleButtonClass parent_class;
-
-  /* Padding for future expansion */
-  void (*_gtk_reserved1) (void);
-  void (*_gtk_reserved2) (void);
-  void (*_gtk_reserved3) (void);
-  void (*_gtk_reserved4) (void);
-};
-
 GDK_AVAILABLE_IN_ALL
 GType          gtk_volume_button_get_type      (void) G_GNUC_CONST;
 GDK_AVAILABLE_IN_ALL